package com.pn.mapper;

import com.pn.entity.Role;
import com.pn.entity.User;
import com.pn.page.Page;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserMapper {
    //根据用户名查询用户信息
     User findUserByUserCode(String userCode);
    //查询用户总记录行数
     Integer findUserRowCount(User user);
    //分页查询用户的方法
     List<User> findUserByPage(@Param("user")User user, @Param("page")Page page);
    //添加用户
     int insertUser(User user);
     //启用或禁用用户
    int updateUserState(User user);
    //根据userId查询用户角色信息
    List<Role> selectUserRoleByUserId(Integer userId);
    //根据userId删除对应数据行
    int deleteByUserId(Integer userId);
    //根据rolename查询roleid
    Integer selectRoleIdByRoleName(String roleName);
    //插入roleid和userid
    int insertRoleIdRoleName(@Param("roleId") Integer roleId,@Param("userId") Integer userId);
    //删除用户
    int deleteUserInfo(List<Integer> userIdList);
    //修改用户昵称
    int updateUserName(@Param("userId") Integer userId,@Param("userName") String userName,@Param("updateBy") Integer updateBy);
    //重置用户密码
    int updatePwd(@Param("password") String password,@Param("userId") Integer userId);

}
